package com.xuecheng.media.service;

import com.xuecheng.media.model.po.MediaProcess;

import java.util.List;

/**
 * @author: Hes
 * @description 媒资文件处理业务方法
 * @date: 2023/6/22 21:04
 */

public interface MediaFileProcessService {
    /**
     * @param shardIndex
     * @param shardTotal
     * @param count
     * @return
     */
    public List<MediaProcess> getMediaProcessList(int shardIndex, int shardTotal, int count);

    /**
     * 开启任务修改任务状态为正在处理
     *
     * @param id
     * @return
     */
    boolean startTask(Long id);

    /**
     * 任务处理完成需要更新任务处理结果，
     * 任务执行成功更新视频的URL、及任务处理结果，
     * 将待处理任务记录删除，
     * 同时向历史任务表添加记录。
     *
     * @param taskId
     * @param status
     * @param fileId
     * @param url
     * @param errorMsg
     */
    void saveProcessFinishStatus(Long taskId, String status, String fileId, String url, String errorMsg);

}
